home *** CD-ROM | disk | FTP | other *** search
/ HPAVC / HPAVC CD-ROM.iso / pc / BLAB_064.ZIP / CRCTEST.BAT < prev    next >
Encoding:
DOS Batch File  |  1995-05-28  |  3.8 KB  |  176 lines

  1. @echo off
  2. rem  ┌─────────────────┐ 
  3. rem  │ ARCHIVE TESTING │
  4. rem  └─────────────────┘ 
  5. IF "%1"=="" GOTO ENDE
  6. IF "%2"=="" GOTO ENDE
  7. IF "%3"=="" GOTO ENDE
  8. IF NOT EXIST %2 GOTO ENDE
  9. IF EXIST crcfail.%3 DEL crcfail.%3 >NUL
  10.  
  11. rem *** ARCHIVE BRANCH ********************************************************
  12.  
  13. IF "%1" == "ZIP" GOTO ZIP
  14. IF "%1" == "ARC" GOTO ARC
  15. IF "%1" == "ARJ" GOTO ARJ
  16. IF "%1" == "LHARC" GOTO LZH
  17. IF "%1" == "PAK" GOTO PAK
  18. IF "%1" == "RAR" GOTO RAR
  19. IF "%1" == "GIF" GOTO GIF
  20. GOTO ENDE
  21.  
  22. rem *** PROCEED ARCHIVE TESTING **********************************************
  23.  
  24. :ZIP
  25. pkunzip -t %2 >NUL
  26. if errorlevel 51 goto ARC_ERROR
  27. if errorlevel 50 goto DISK_FULL
  28. if errorlevel 11 goto NO_FILES
  29. if errorlevel 10 goto BAD_COMMAND
  30. if errorlevel 9 goto NO_FILES
  31. if errorlevel 8 goto NO_MEMORY
  32. if errorlevel 3 goto ARC_ERROR
  33. if errorlevel 2 goto ARC_ERROR
  34. rem *** level 1 is for warnings, have to assume CRC warning ***
  35. if errorlevel 1 goto CRC_ERROR
  36. GOTO ENDE
  37.  
  38. :ARC
  39. pkunpak -t %2 >NUL
  40. if errorlevel 1 goto ARC_ERROR
  41. GOTO ENDE
  42.  
  43. :PAK
  44. pak t %2 >NUL
  45. if errorlevel 1 goto ARC_ERROR
  46. GOTO ENDE
  47.  
  48. :ARJ
  49. arj t /y %2 >NUL
  50. if errorlevel 9 goto INVALID
  51. if errorlevel 8 goto NO_MEMORY
  52. if errorlevel 7 goto BAD_COMMAND
  53. if errorlevel 6 goto ARC_ERROR
  54. if errorlevel 5 goto DISK_FULL
  55. if errorlevel 4 goto FAIL_VERIFY
  56. if errorlevel 3 goto CRC_ERROR
  57. if errorlevel 2 goto ARC_ERROR
  58. if errorlevel 1 goto ARC_ERROR
  59. GOTO ENDE
  60.  
  61. :LZH
  62. lha t /m /n2 %2 >NUL
  63. if errorlevel == 2 goto ARC_ERROR
  64. if errorlevel == 1 goto CRC_ERROR
  65. GOTO ENDE
  66.  
  67. :RAR
  68. rar t -y %2 >NUL
  69. if errorlevel == 255 goto PROG_ERROR
  70. if errorlevel == 8 goto NO_MEMORY
  71. if errorlevel == 7 goto BAD_COMMAND
  72. if errorlevel == 6 goto PROG_ERROR
  73. if errorlevel == 5 goto DISK_FULL
  74. if errorlevel == 4 goto LOCKED
  75. if errorlevel == 3 goto CRC_ERROR
  76. if errorlevel == 2 goto ARC_ERROR
  77. if errorlevel == 1 goto WARNING
  78. goto ENDE
  79.  
  80. :GIF
  81. giftest %2 %4
  82. if errorlevel == 255 goto PROG_ERROR
  83. if errorlevel == 60 goto ENDE
  84. if errorlevel == 25 goto DUPE_CRC
  85. if errorlevel == 20 goto MIN_REZ
  86. if errorlevel == 10 goto GIF_LITED
  87. if errorlevel == 5 goto BAD_COMMAND
  88. if errorlevel == 1 goto GIF_FAIL
  89. GOTO ENDE
  90.  
  91. rem *** ARCHIVE ERRORS *******************************************************
  92.  
  93. :CRC_ERROR
  94. ECHO CRC ERRORS IN %1! %4 >CRCFAIL.%3
  95. ECHO 1 >>CRCFAIL.%3
  96. GOTO ENDE
  97.  
  98. :ARC_ERROR
  99. ECHO ERROR IN %1! %4 >CRCFAIL.%3
  100. ECHO 1 >>CRCFAIL.%3
  101. GOTO ENDE
  102.  
  103. :INVALID
  104. ECHO INVALID %1! %4 >CRCFAIL.%3
  105. ECHO 1 >>CRCFAIL.%3
  106. GOTO ENDE
  107.  
  108. :NO_FILES
  109. rem  Partial Archive?
  110. ECHO NO FILES IN %1! %4 >CRCFAIL.%3
  111. ECHO 2 >>CRCFAIL.%3
  112. GOTO ENDE
  113.  
  114. rem *** GIF ERRORS ***********************************************************
  115.  
  116. :GIF_FAIL
  117. ECHO INVALID HEADER OR PARTIAL GIF! >CRCFAIL.%3
  118. ECHO 2 >>CRCFAIL.%3
  119. GOTO ENDE
  120.  
  121. :MIN_REZ
  122. ECHO FAILED MINIMUM RESOLUTION! >CRCFAIL.%3
  123. ECHO 1 >>CRCFAIL.%3
  124. GOTO ENDE
  125.  
  126. :DUPE_CRC
  127. ECHO DUPLICATE CRC FOUND! >CRCFAIL.%3
  128. ECHO 1 >>CRCFAIL.%3
  129. GOTO ENDE
  130.  
  131. :GIF_LITED
  132. REM Tells GIF-LITE not to bother
  133. ECHO PASSED (GIF-LITE'd) >CRCFAIL.%3
  134. ECHO -1 >>CRCFAIL.%3
  135. GOTO ENDE
  136.  
  137. rem *** WARNINGS *************************************************************
  138.  
  139. :NO_MEMORY
  140. ECHO WARNING - INSUFFICIENT MEMORY!!! >CRCFAIL.%3
  141. ECHO 0 >>CRCFAIL.%3
  142. GOTO ENDE
  143.  
  144. :FAIL_VERIFY
  145. ECHO WARNING - FAILED VERIFICATION! >CRCFAIL.%3
  146. ECHO 0 >>CRCFAIL.%3
  147. GOTO ENDE
  148.  
  149. :WARNING
  150. ECHO WARNING - NON FATAL ERROR(S)! >CRCFAIL.%3
  151. ECHO 0 >>CRCFAIL.%3
  152. GOTO ENDE
  153.  
  154. :LOCKED
  155. ECHO WARNING - ARCHIVE LOCKED! >CRCFAIL.%3
  156. ECHO 0 >>CRCFAIL.%3
  157. GOTO ENDE
  158.  
  159. :BAD_COMMAND
  160. ECHO WARNING - ILLEGAL COMMAND!!! >CRCFAIL.%3
  161. ECHO 0 >>CRCFAIL.%3
  162. GOTO ENDE
  163.  
  164. :DISK_FULL
  165. ECHO WARNING - DISK FULL!!! >CRCFAIL.%3
  166. ECHO 0 >>CRCFAIL.%3
  167. GOTO ENDE
  168.  
  169. :PROG_ERROR
  170. ECHO WARNING - PROGRAM ERROR!!! >CRCFAIL.%3
  171. ECHO 0 >>CRCFAIL.%3
  172. GOTO ENDE
  173.  
  174. rem *** END OF BATCH *********************************************************
  175. :ENDE
  176.